package com.dhcc.DRGsHosp.core.domain;

import java.io.Serializable;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.openkoala.koala.commons.domain.KoalaLegacyEntity;
/**
 * 
 * @ClassName: Order  
 * @Description ：    
 * @Date: 2017年10月25日 下午3:27:08  
 * @Author LiuHongJun 
 * @Version 3.0.0 DHC-DRGs
 */
@Entity
@Table (name = "T_ORDER_RANGE_MONTH", schema = "DRGs")
public class Order extends KoalaLegacyEntity {

	private static final long serialVersionUID = 1L;
	
	@Id
	@Column(name = "ID")
	private String parId; 

	@Column(name = "ORDER_MR_ID")
	private String orderMrId; //病人Id

	@Column(name = "ORDER_ID")
	private String orderId; //医嘱项代码
	
	@Column(name = "ORDER_DESC")
	private String orderDesc = "医嘱"; //医嘱描述
	
	@Column(name = "ORDER_TOTAL_FEE")
	private Double orderTotalFee ; //医嘱费用
	
	@Column(name = "ORDER_QUANTITY")
	private Integer orderQuantity; //医嘱数量
	
	@Column(name = "ORDER_UNIT_PRICE")
	private Double orderUnitPrice ; //单价
	
	@Column(name = "ORDER_DOCTOR")
	private String orderDoctor; //开单医生
	
	@Column(name = "ORDER_DOC_DEP_CODE")
	private String orderDocDepCode; //开单科室编码
	
	@Column(name = "ORDER_DOC_DEP")
	private String orderDocDep; //开单科室
	
	
	@Column(name = "ORDER_RECEIVE_DEP_CODE")
	private String orderReceiveDepCode;//医嘱接受科室代码

	@Column(name = "ORDER_RECEIVE_DEP")
	private String orderReceiveDep; //医嘱接受科室
	
	@Column(name = "ORDER_FIRSTPAGE_FEE")
	private String orderFirstpageFee; //38项费用分类代码
	
	@Column(name = "ORDER_SUBCATEGORY")
	private String orderSubcate; //医嘱子类
	
	@Column(name = "ORDER_CATEGORY")
	private String orderCategory;//医嘱大类
	
	@Column(name = "ISMEDINS")
	private Integer isMedins; //是否医保数据
	
	@Column(name = "DEPGROUP_CODE")
	private String depGroupCode; //科室组代码
	
	@Column(name = "DEP_CODE")
	private String depCode; //科室代码
	
	
	@Column(name = "ADRG_CODE")
	private String adrgCode; //adrg代码
	
	
	@Column(name = "DRGS_CODE")
	private String drgCode; //drg代码
	
	
	@Column(name = "BENCHMARK")
	private String benchMark; //标杆值
	
	@Column(name = "CLINICGROUP")
	private String clinicGroup;//主诊组,新增by wen
	
	@Column(name = "COSTAMOUNT")
	private Double costAmount;//总费用
	
	@Column(name = "IS_TRANS_DEP")
	private String isTransDep;//是否转科
	
	@Column(name = "DCC_CODE")
	private String dhccCode;//费用五大类
	
	@Column(name = "OUT_DATE")
	private Date outDate;//出院日期
	
	
	@Column(name = "ORDER_FORM")
	private Date orderForm;//医嘱剂型
	
	@Column(name = "ORDER_SPEC")
	private String orderSpec;//医嘱规格
	
	
	@Column(name = "ORDER_BILL_SUBCATE")
	private String orderBillSubcate;//账单子类
	
	@Column(name = "ORDER_BILL_CATEGORY")
	private String orderBillCategory;//账单大类
	
	private String dateFrom; //开始时间
	private String dateTo; //截至时间
	private String pType; //人员类型
	private String isPrimaryFee; //是否只要费用
	private String isPrimaryUse; //是否主要使用
	private String orderSubcateDesc;//医嘱子类描述,新增by wen
	private String isHighOrder; //是否高值医嘱
	private String NotExceedingOrders; //未超标使用人次
	private String IsExceeding; //是否超标, 0未超标, 1超标, 空为全部
	private String manageYear; //标杆年份ASFNDKJDSKG
	private String orderFirstpageFeeDesc = ""; //38项费用分类描述,新增by wen
	private String stdId;
	public Order() {
		super();
	}
	public Order(String parId, String orderMrId, String orderId, String orderDesc, Double orderTotalFee,
			Integer orderQuantity, Double orderUnitPrice, String orderDoctor, String orderDocDepCode,
			String orderDocDep, String orderReceiveDepCode, String orderReceiveDep, String orderFirstpageFee,
			String orderSubcate, String orderCategory, Integer isMedins, String depGroupCode, String depCode,
			String adrgCode, String drgCode, String benchMark, String clinicGroup, Double costAmount, String isTransDep,
			String dhccCode, Date outDate, Date orderForm, String orderSpec, String orderBillSubcate,
			String orderBillCategory, String dateFrom, String dateTo, String pType, String isPrimaryFee,
			String isPrimaryUse, String orderSubcateDesc, String isHighOrder, String notExceedingOrders,
			String isExceeding, String stdId, String manageYear, String orderFirstpageFeeDesc) {
		super();
		this.parId = parId;
		this.orderMrId = orderMrId;
		this.orderId = orderId;
		this.orderDesc = orderDesc;
		this.orderTotalFee = orderTotalFee;
		this.orderQuantity = orderQuantity;
		this.orderUnitPrice = orderUnitPrice;
		this.orderDoctor = orderDoctor;
		this.orderDocDepCode = orderDocDepCode;
		this.orderDocDep = orderDocDep;
		this.orderReceiveDepCode = orderReceiveDepCode;
		this.orderReceiveDep = orderReceiveDep;
		this.orderFirstpageFee = orderFirstpageFee;
		this.orderSubcate = orderSubcate;
		this.orderCategory = orderCategory;
		this.isMedins = isMedins;
		this.depGroupCode = depGroupCode;
		this.depCode = depCode;
		this.adrgCode = adrgCode;
		this.drgCode = drgCode;
		this.benchMark = benchMark;
		this.clinicGroup = clinicGroup;
		this.costAmount = costAmount;
		this.isTransDep = isTransDep;
		this.dhccCode = dhccCode;
		this.outDate = outDate;
		this.orderForm = orderForm;
		this.orderSpec = orderSpec;
		this.orderBillSubcate = orderBillSubcate;
		this.orderBillCategory = orderBillCategory;
		this.dateFrom = dateFrom;
		this.dateTo = dateTo;
		this.pType = pType;
		this.isPrimaryFee = isPrimaryFee;
		this.isPrimaryUse = isPrimaryUse;
		this.orderSubcateDesc = orderSubcateDesc;
		this.isHighOrder = isHighOrder;
		NotExceedingOrders = notExceedingOrders;
		IsExceeding = isExceeding;
		this.stdId = stdId;
		this.manageYear = manageYear;
		this.orderFirstpageFeeDesc = orderFirstpageFeeDesc;
	}

	public String getParId() {
		return parId;
	}

	public void setParId(String parId) {
		this.parId = parId;
	}

	public String getOrderMrId() {
		return orderMrId;
	}

	public void setOrderMrId(String orderMrId) {
		this.orderMrId = orderMrId;
	}

	public String getOrderId() {
		return orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public String getOrderDesc() {
		return orderDesc;
	}

	public void setOrderDesc(String orderDesc) {
		this.orderDesc = orderDesc;
	}

	public Double getOrderTotalFee() {
		return orderTotalFee;
	}

	public void setOrderTotalFee(Double orderTotalFee) {
		this.orderTotalFee = orderTotalFee;
	}

	public Integer getOrderQuantity() {
		return orderQuantity;
	}

	public void setOrderQuantity(Integer orderQuantity) {
		this.orderQuantity = orderQuantity;
	}

	public Double getOrderUnitPrice() {
		return orderUnitPrice;
	}

	public void setOrderUnitPrice(Double orderUnitPrice) {
		this.orderUnitPrice = orderUnitPrice;
	}

	public String getOrderDoctor() {
		return orderDoctor;
	}

	public void setOrderDoctor(String orderDoctor) {
		this.orderDoctor = orderDoctor;
	}

	public String getOrderDocDepCode() {
		return orderDocDepCode;
	}

	public void setOrderDocDepCode(String orderDocDepCode) {
		this.orderDocDepCode = orderDocDepCode;
	}

	public String getOrderDocDep() {
		return orderDocDep;
	}

	public void setOrderDocDep(String orderDocDep) {
		this.orderDocDep = orderDocDep;
	}

	public String getOrderReceiveDepCode() {
		return orderReceiveDepCode;
	}

	public void setOrderReceiveDepCode(String orderReceiveDepCode) {
		this.orderReceiveDepCode = orderReceiveDepCode;
	}

	public String getOrderReceiveDep() {
		return orderReceiveDep;
	}

	public void setOrderReceiveDep(String orderReceiveDep) {
		this.orderReceiveDep = orderReceiveDep;
	}

	public String getOrderFirstpageFee() {
		return orderFirstpageFee;
	}

	public void setOrderFirstpageFee(String orderFirstpageFee) {
		this.orderFirstpageFee = orderFirstpageFee;
	}

	public String getOrderSubcate() {
		return orderSubcate;
	}

	public void setOrderSubcate(String orderSubcate) {
		this.orderSubcate = orderSubcate;
	}

	public String getOrderCategory() {
		return orderCategory;
	}

	public void setOrderCategory(String orderCategory) {
		this.orderCategory = orderCategory;
	}

	public Integer getIsMedins() {
		return isMedins;
	}

	public void setIsMedins(Integer isMedins) {
		this.isMedins = isMedins;
	}

	public String getDepGroupCode() {
		return depGroupCode;
	}

	public void setDepGroupCode(String depGroupCode) {
		this.depGroupCode = depGroupCode;
	}

	public String getDepCode() {
		return depCode;
	}

	public void setDepCode(String depCode) {
		this.depCode = depCode;
	}

	public String getAdrgCode() {
		return adrgCode;
	}

	public void setAdrgCode(String adrgCode) {
		this.adrgCode = adrgCode;
	}

	public String getDrgCode() {
		return drgCode;
	}

	public void setDrgCode(String drgCode) {
		this.drgCode = drgCode;
	}

	public String getBenchMark() {
		return benchMark;
	}

	public void setBenchMark(String benchMark) {
		this.benchMark = benchMark;
	}

	public String getClinicGroup() {
		return clinicGroup;
	}

	public void setClinicGroup(String clinicGroup) {
		this.clinicGroup = clinicGroup;
	}

	public Double getCostAmount() {
		return costAmount;
	}

	public void setCostAmount(Double costAmount) {
		this.costAmount = costAmount;
	}

	public String getIsTransDep() {
		return isTransDep;
	}

	public void setIsTransDep(String isTransDep) {
		this.isTransDep = isTransDep;
	}

	public String getDhccCode() {
		return dhccCode;
	}

	public void setDhccCode(String dhccCode) {
		this.dhccCode = dhccCode;
	}

	public Date getOutDate() {
		return outDate;
	}

	public void setOutDate(Date outDate) {
		this.outDate = outDate;
	}

	public Date getOrderForm() {
		return orderForm;
	}

	public void setOrderForm(Date orderForm) {
		this.orderForm = orderForm;
	}

	public String getOrderSpec() {
		return orderSpec;
	}

	public void setOrderSpec(String orderSpec) {
		this.orderSpec = orderSpec;
	}

	public String getOrderBillSubcate() {
		return orderBillSubcate;
	}

	public void setOrderBillSubcate(String orderBillSubcate) {
		this.orderBillSubcate = orderBillSubcate;
	}

	public String getOrderBillCategory() {
		return orderBillCategory;
	}

	public void setOrderBillCategory(String orderBillCategory) {
		this.orderBillCategory = orderBillCategory;
	}

	public String getDateFrom() {
		return dateFrom;
	}

	public void setDateFrom(String dateFrom) {
		this.dateFrom = dateFrom;
	}

	public String getDateTo() {
		return dateTo;
	}

	public void setDateTo(String dateTo) {
		this.dateTo = dateTo;
	}

	public String getpType() {
		return pType;
	}

	public void setpType(String pType) {
		this.pType = pType;
	}

	public String getIsPrimaryFee() {
		return isPrimaryFee;
	}

	public void setIsPrimaryFee(String isPrimaryFee) {
		this.isPrimaryFee = isPrimaryFee;
	}

	public String getIsPrimaryUse() {
		return isPrimaryUse;
	}

	public void setIsPrimaryUse(String isPrimaryUse) {
		this.isPrimaryUse = isPrimaryUse;
	}

	public String getOrderSubcateDesc() {
		return orderSubcateDesc;
	}

	public void setOrderSubcateDesc(String orderSubcateDesc) {
		this.orderSubcateDesc = orderSubcateDesc;
	}

	public String getIsHighOrder() {
		return isHighOrder;
	}

	public void setIsHighOrder(String isHighOrder) {
		this.isHighOrder = isHighOrder;
	}

	public String getNotExceedingOrders() {
		return NotExceedingOrders;
	}

	public void setNotExceedingOrders(String notExceedingOrders) {
		NotExceedingOrders = notExceedingOrders;
	}

	public String getIsExceeding() {
		return IsExceeding;
	}

	public void setIsExceeding(String isExceeding) {
		IsExceeding = isExceeding;
	}

	public String getStdId() {
		return stdId;
	}
	public void setStdId(String stdId) {
		this.stdId = stdId;
	}
	public String getManageYear() {
		return manageYear;
	}

	public void setManageYear(String manageYear) {
		this.manageYear = manageYear;
	}

	public String getOrderFirstpageFeeDesc() {
		return orderFirstpageFeeDesc;
	}

	public void setOrderFirstpageFeeDesc(String orderFirstpageFeeDesc) {
		this.orderFirstpageFeeDesc = orderFirstpageFeeDesc;
	}

	public Map<String, Object> orderMap() {
		Map<String, Object> map=new HashMap<String,Object>();
		map.put("ID","parId");
		map.put("ORDER_MR_ID","orderMrId");
		map.put("ORDER_ID","orderId");
		map.put("ORDER_DESC","orderDesc");
		map.put("ORDER_TOTAL_FEE","orderTotalFee");
		map.put("ORDER_QUANTITY","orderQuantity");
		map.put("ORDER_UNIT_PRICE","orderUnitPrice");
		map.put("ORDER_DOCTOR","orderDoctor");		
		map.put("ORDER_DOC_DEP","orderDocDep");
		map.put("ORDER_DOC_DEP_CODE","orderDocDepCode");	
		map.put("ORDER_RECEIVE_DEP_CODE","orderReceiveDepCode");
		map.put("ORDER_RECEIVE_DEP","orderReceiveDep");
		map.put("ORDER_FIRSTPAGE_FEE","orderFirstpageFee");
		map.put("ISMEDINS","isMedins");
		map.put("DEP_CODE","depCode");
		map.put("ADRG_CODE","adrgCode");
		map.put("DRGS_CODE","drgCode");
		map.put("CLINICGROUP","clinicGroup");
		map.put("COSTAMOUNT","costAmount");
		map.put("OUT_DATE","outDate");	
		map.put("DCC_CODE","dhccCode");
		map.put("ORDER_FORM","orderForm");
		map.put("ORDER_SPEC","orderSpec");
		map.put("ORDER_CATEGORY","orderCategory");
		map.put("ORDER_BILL_CATEGORY","orderBillCategory");
		map.put("ORDER_BILL_SUBCATE","orderBillSubcate");
		map.put("BENCHMARK","benchMark");
		return map;
	}

	@Override
	public Serializable getId() {
		return orderMrId;
	}

	@Override
	public String[] businessKeys() {
		// TODO Auto-generated method stub
		return null;
	}
}
